home *** CD-ROM | disk | FTP | other *** search
/ Gigarom 4 / Mac Giga-ROM 4.0 - 1993.toast / FILES / VIR / VirusDetective® 5.0.sea / VirusDetectiveÆ 5.0.rsrc / TEXT_-15998_VirusDetectiveÆ's SStrings Text.txt < prev    next >
Text File  |  1991-10-11  |  23KB  |  387 lines

  1. VirusDetective¬Æ Help
  2. Search Strings Dialog Box
  3.  
  4.  
  5. TABLE OF CONTENTS‚Ķ
  6. I)  Preface‚Ķ Definitions;
  7. A)  Current Search String List (in the Upper Scrollable Window);
  8. B)  Search String Entry Box;
  9. C)  ‚ÄúAdd‚Äù, ‚ÄúRemove‚Äù, ‚ÄúRead from File‚Äù, and ‚ÄúWrite from File‚Äù Buttons;
  10. D)  Search String Help File (in the Lower Scrollable Window);
  11. E)  ‚ÄúHelp->Clipboard‚Äù, ‚ÄúCancel‚Äù and ‚ÄúSave‚Äù Buttons;
  12. Appendix 1)  How VirusDetective‚Äôs Search Strings Work; 
  13. Appendix 2)  When an HTD Threatens the Macintosh Community, How We Distribute the New Search Strings;
  14. Appendix 3)  Search String Syntax: How to Create and Customize Your Own Search Strings.
  15.  
  16.                                                                                     -----------------------
  17.  
  18. I)  PREFACE‚Ķ DEFINITIONS‚Ķ
  19. Before you get into this Help file in any depth, a couple of definitions and explanations are in order:
  20.  
  21. DEFINITION: ‚ÄúHexually-transmitted disease‚Äù (HTD for short): any virus, Trojan Horse or worm; a file that has an HTD is an ‚Äúinfected‚Äù file.
  22.  
  23. DEFINITION: ‚ÄúA search string has matched the contents of a file‚Äù: this is technical jargon for when VirusDetective has found an HTD (virus, Trojan Horse, or worm). In technical terms, a file on the Macintosh is made up of either a resource part (called the resource fork) or a data part (called the data fork), or both. (NOTE: the majority of viruses infect the resource fork.) As a non-technical VirusDetective user, you need NOT know about resource forks and data forks. 
  24.  
  25. Whenever you see something like ‚ÄúA search string matched the resource part of a file or data part of a file‚Äù or simply ‚ÄúA search string matched a resource‚Äù, know that VirusDetective has found an infected file. It is the same as saying ‚ÄúA search string found an infected file‚Äù.
  26.  
  27. In the event that a search string matches a file but it turns out NOT to actually be an HTD, it is a ‚Äúfalse alarm‚Äù (a ‚Äú false positive‚Äù). Statistically, false positives cannot be prevented ‚Äì they happen occasionally no matter what you do to prevent them.
  28.  
  29.                                                                                      -----------------------
  30.  
  31. A)  CURRENT SEARCH STRING LIST (IN THE UPPER SCROLLABLE WINDOW)‚Ķ
  32. This is the list of search strings as they exist today. You can keep the search string list the same as when you originally got the VirusDetective desk accessory, you can add search strings, and you can delete search strings. When you want to copy a search string onto the Clipboard, highlight the desired search string, making sure nothing is highlighted in the Search String Entry box, then select Copy from the menu bar, or press Command-C.
  33.  
  34.                                                                                      -----------------------
  35.  
  36. B)  SEARCH STRING ENTRY BOX‚Ķ
  37. The Search String Entry box is the long box and it is where you add search strings. Copy, cut and paste works in this box via Command-C, Command-X and Command-V, respectively. 
  38.  
  39. Blank spaces may be used between search string parts to improve readability. A search string must be 255 characters or less.
  40.  
  41.                                                                                      -----------------------
  42.  
  43. C) ‚ÄúADD‚Äù, ‚ÄúREMOVE‚Äù, ‚ÄúREAD FROM FILE‚Äù, AND ‚ÄúWRITE FROM FILE‚Äù BUTTONS‚Ķ
  44.  
  45. C.1  ‚ÄúAdd‚Äù button‚Ķ
  46. When you click the Add button, VirusDetective adds what is in the Search String Entry box into the list of search strings. (Be aware that the Add button has nothing to do with the Clipboard.) You are notified of any errors in the search string after you click the Add button.
  47.  
  48. C.2  ‚ÄúRemove‚Äù button‚Ķ
  49. When you click the the Remove button, VirusDetective removes the search string that is highlighted. (Be aware that the Remove button has nothing to do with the Clipboard.)
  50.  
  51. C.3  ‚ÄúRead from File‚Äù and ‚ÄúAppend to List‚Äù button‚Ķ
  52.  
  53. C.3.1  ‚ÄúRead from File‚Äù button‚Ķ
  54. When you click the Read from File button, VirusDetective presents a directory dialog box that lets you read a text file (we repeat, TEXT file) of search strings, one per line, into the slot where the search strings belong REPLACING  the entire current search string list.
  55.  
  56. It is the Read from File button you would use to read either the ‚ÄúVD Search Strings‚Äù or ‚ÄúAlternate Search Strings‚Äù files into VirusDetective. We have provided two files, ‚ÄúVD Search Strings‚Äù and ‚ÄúAlternate Search Strings‚Äù both of which are OPTIONAL. VirusDetective comes to you with its search string list stored ready to go.
  57.  
  58. The file ‚ÄúVD Search Strings‚Äù is an exact copy of the search string list that comes built-in to VirusDetective. This list is designed to check files for all known active (‚ÄúINFECTIOUS‚Äù) viruses in a SPEEDY manner. We have put them into a separate text file just in case you accidentally remove or change a search string, and you want to input the original list into VirusDetective once again.
  59.  
  60. The file ‚ÄúAlternate Search Strings‚Äù contains the same search string list as the built-in list EXCEPT that the SPEED ENHANCEMENTS that are in the built-in list HAVE BEEN REMOVED. The ‚ÄúAlternate Search Strings‚Äù results in SLOWER scans than the built-in search string list. However, the trade-off is that the ‚ÄúAlternate Search Strings‚Äù gives you more PROTECTION because this set detects ‚ÄúAS-OF-YET UNDISCOVERED‚Äù mutations of existing viruses also.
  61.  
  62. VirusDetective recognizes text files generated from any Macintosh word processing application. Just make sure it is a TEXT file with one search string per line. The newly read-in list (or partial list) of search strings is NOT permanent until you click the Save button.
  63.  
  64. C.3.2  ‚ÄúAppend to List‚Äù button: hold down the Option key and the ‚ÄúRead from File‚Äù button transforms into the ‚ÄúAppend to List‚Äù button‚Ķ
  65.  
  66. When you want to ADD search strings TO THE END of the existing search string list, hold down the option key and you will see the Read from File button changes to the Append to List button. The Append to List button allows you to ADD TO the current search string list  instead of replacing the entire list.
  67.  
  68. C.4  ‚ÄúWrite to File‚Äù button‚Ķ
  69. When you click the Write to File button, VirusDetective presents a directory dialog box that lets you save a separate text file identical to VirusDetective‚Äôs current search string set as displayed, but not necessarily saved, in the search string list. The default file name is ‚ÄúVD Search Strings‚Äù; change it if you like. 
  70.  
  71. Save Files in the Form of‚Ķ (in the Options dialog box) controls what file format VirusDetective saves the file as. For example, if you select the WriteNow button in Save Files in the Form of‚Ķ, then VirusDetective writes the search string text file as WriteNow text format.
  72.  
  73.                                                                                      -----------------------
  74.  
  75. D)  SEARCH STRING HELP FILE (IN THE LOWER SCROLLABLE WINDOW)‚Ķ
  76. <You are in this file now.> Scroll up or down to find the information you require.
  77.  
  78.                                                                                     -----------------------
  79.  
  80. E)  ‚ÄúHELP->CLIPBOARD‚Äù, ‚ÄúCANCEL‚Äù AND ‚ÄúSAVE‚Äù BUTTONS‚Ķ
  81.  
  82. E.1  ‚ÄúHelp->Clipboard‚Äù button‚Ķ
  83. When you click the Help->Clipboard button, you can copy the contents of the Help file to the Clipboard. Paste the contents of the Clipboard wherever you want (probably to your favorite word processing program).
  84.  
  85. E.2  ‚ÄúCancel‚Äù button‚Ķ
  86. When you click the Cancel button: 
  87.           1) if you made any changes, VirusDetective presents an alert box that asks ‚ÄúSave changes to {name of the dialog box}?‚Äù. You have the choice between: Don‚Äôt Save, Cancel (this cancel cancels the first cancel) or Save;
  88.           2) if you didn‚Äôt make any changes, VirusDetective brings you back to the Main Window.
  89.  
  90. E.3  ‚ÄúSave‚Äù button‚Ķ
  91. If you click the Save button, VirusDetective saves any changes and then closes the dialog box.
  92.  
  93.                                                                                      -----------------------
  94.                                                                                      -----------------------
  95.  
  96. APPENDIX 1)  HOW VIRUSDETECTIVE‚ÄôS SEARCH STRINGS WORK‚Ķ
  97. How VirusDetective works ‚Äì it provides you with the means to search for the ‚Äúfingerprints‚Äù an HTD leaves behind AFTER it infects a file but BEFORE it can get a chance to infect your files. In technical jargon, these fingerprints are called ‚Äúresources.‚Äù 
  98.  
  99. VirusDetective searches various resources by means of various matching criteria. These matching criteria are called ‚Äúsearch strings.‚Äù The search strings are programable ‚Äì you can change them, add them and delete them.
  100.  
  101.                                                                                      -----------------------
  102.  
  103. APPENDIX 2)  WHEN AN HTD THREATENS THE MACINTOSH COMMUNITY, HOW WE DISTRIBUTE THE NEW SEARCH STRINGS‚Ķ
  104. One strong point of VirusDetective is that you don‚Äôt have to purchase a new update of VirusDetective every time a new HTD appears on the scene. This is because of its search string programability.
  105.  
  106. We mail to all VirusDetective REGISTERED users (at no additional charge) postcards or flyers that contain the new search string as each new virus is discovered in a timely manner.
  107.  
  108.                                                                                      -----------------------
  109.  
  110. APPENDIX 3)  SEARCH STRING SYNTAX: HOW TO CREATE AND CUSTOMIZE YOUR OWN SEARCH STRINGS‚Ķ
  111. There are only two things you really should know about search strings: 
  112.           1) what role the search strings play in relation to how VirusDetective works, and 
  113.           2) when a new HTD threat appears, if would be good if you were able to do one of these two things: a) add a search string to the search string set you already have, or b) add an entire new file of search strings to the VirusDetective you have. Either way, your search string list is the most recent.
  114.  
  115. You need NOT be concerned if you do not understand VirusDetective‚Äôs search string syntax nor ever want to learn. You can get along just fine without knowing the nitty-gritty of the search string syntax!
  116.  
  117. We include this search string syntax primarily for advanced Macintosh users. Go for it! 
  118.  
  119. THE SEARCH STRING SYNTAX IS AS FOLLOWS:
  120.  
  121. 3.1  LEGEND TO THE SEARCH STRING SYNTAX‚Ķ
  122.           An item within <> means that this item is further defined as SOMETHING ELSE;
  123.           := means ‚Äúis defined as one of the following,‚Äù one possibility per line. Is defined as ‚Äòthat‚Äô OR 
  124.                ‚Äòthat‚Äô OR ‚Äòthat‚Äô , each ‚Äòthat‚Äô being on a different line;
  125.           An item within braces {} means that the item is OPTIONAL;
  126.           An item within ¬´¬ª means that item can be REPEATED one or more times;
  127.           An item in bold means that item is a KEYWORD. A keyword must be typed EXACTLY as shown.
  128.  
  129.                                                                                      -----------------------
  130.  
  131. 3.2  SEARCH STRING FORMATS‚Ķ
  132.      <search-string> :=
  133.              <file-string> {; Comment}
  134.              <file-string> & <resource-string> {; Comment}
  135.              <file-string> & <data-string> {; Comment}
  136.              <resource-string> {; Comment}
  137.              <data-string> {; Comment}
  138.  
  139. A search string is defined as one of five formats: 1) a <file-string>, 2) a <file-string> followed by the character ‚Äò&‚Äô followed by a <resource-string> or <data-string>, 3) a <file-string> followed by the character ‚Äò&‚Äô followed by a <data-string>, or 4) a <resource-string> by itself, or 5) <data-string> by itself.
  140.  
  141. All of the five can be followed by an optional comment which is a semi-colon followed by what you want to say in the comment. The braces {} mean the comment is optional.
  142.  
  143. <file-string>‚Äôs can actually follow most <resource-string>‚Äôs anywhere in the <search-string> (not just at the beginning) and they MUST precede a <data-string>. In general, you want <file-string>‚Äôs before anything else in order to speed up the search process.
  144.  
  145.                                                                                      -----------------------
  146.  
  147. 3.3  FILE STRING FORMATS‚Ķ
  148.      <file-string> :=
  149.              Creator <op> <CID>
  150.              Filetype <op> <FID>
  151.  
  152.      <op> :=
  153.              =
  154.              ‚â†
  155.              >
  156.              <
  157.  
  158.              <CID> := 4 character file creator
  159.  
  160.              <FID> := 4 character file type
  161.  
  162. A <file-string> starts with either the keyword Creator or the keyword Filetype followed by one of four comparison operators: ‚Äò=‚Äô (is equal to), ‚Äò‚ↂÄô (is not equal to) , ‚Äò>‚Äô (is greater than), or ‚Äò<‚Äô (is less than) followed by a four-character file creator or four-character file type. (Type Option-= to get the ‚Äò‚ↂÄô character.) For example, 
  163.  
  164.      Filetype = APPL
  165.  
  166. matches all applications.
  167.  
  168.                                                                                      -----------------------
  169.  
  170. 3.4  RESOURCE STRING FORMATS‚Ķ
  171.      <resource-string> :=
  172.              Executables
  173.              <resource-selector> ¬´& <resource-comp>¬ª
  174.  
  175. A <resource-string> is defined as one of two things: 1) the keyword Executables, or 2) a <resource-selector> followed by one or more <resource-comp>‚Äôs each separated by an ‚Äò&‚Äô.
  176.  
  177. Executables matches any executable resource (such as CODE, WDEF, etc.) that can exist in a file. Certain files such as the Finder‚Äôs ‚ÄúDesktop‚Äù file do NOT normally contain these resources and these resource‚Äôs existence in that file MAY very well mean you have a virus. The only thing that can come after the Executables keyword is a comment.
  178.  
  179.                                                                                      -----------------------
  180.  
  181. 3.5  RESOURCE SELECTOR FORMATS‚Ķ
  182.      <resource-selector> :=
  183.              Resource Start
  184.              Resource StartPos
  185.              Resource <RID>
  186.  
  187.              <RID> := 4 character resource type
  188.  
  189. A <resource-selector> is defined as one of three things: 1) Resource Start which means the first executed CODE resource, or 2) Resource StartPos which means the first executed instruction of the first executed CODE resource, or 3) Resource XXXX where XXXX is some resource type like nVIR. 
  190.  
  191.           NOTE: <RID> MUST BE EXACTLY FOUR (4) CHARACTERS LONG, INCLUDING ANY SPACES. ONE, AND ONLY ONE, SPACE MUST EXIST BETWEEN THE WORD Resource AND <RID> OR BETWEEN Resource AND Start OR BETWEEN Resource AND StartPos.
  192.  
  193.                                                                                      -----------------------
  194.  
  195. 3.6  RESOURCE COMP FORMATS‚Ķ
  196.      <resource-comp> :=
  197.              Any
  198.              Data <pattern>
  199.              WData <pattern>
  200.              LData <pattern>
  201.              Pos <snum> & Data <pattern>
  202.              Pos <snum> & WData <pattern>
  203.              Pos <snum> & LData <pattern>
  204.              ID <op> <snum>
  205.              Name <sep><string><sep>
  206.              Size <op> <num>
  207.  
  208.      <snum> :=
  209.              <num>
  210.               -<num>
  211.  
  212.      <num> := unsigned number (in Base 10)
  213.  
  214.      <sep> := any single character; each pair has to be the same character
  215.  
  216.      <string> := string of up to 255 characters
  217.  
  218. 3.6.1  Any
  219.  
  220. Any matches any <resource-selector> resource. For example, 
  221.  
  222.      Resource nVIR & Any
  223.  
  224. matches any nVIR resource.
  225.  
  226. 3.6.2  Data <pattern>
  227.  
  228. Data matches any <resource-selector> resource containing <pattern> (described below). You can specify an optional starting offset position with the Pos keyword. Positive offsets add to the beginning; negative offsets subtract from the end. For example,
  229.  
  230.      Resource Start & Pos -1344 & Data 060CA9#643E9
  231.  
  232. starts searching the first executed CODE resource for the pattern 060CA9#643E9 located 1344 bytes from the end of the CODE resource. 
  233.  
  234. Data must be the last keyword in a search string. 
  235.  
  236. 3.6.3  Pos <snum>
  237.  
  238. The Pos keyword (if present) can occur anywhere before the Data, WData or LData keywords (you cannot, however, specify the Pos keyword if you already have specified Resource StartPos because the starting position is already determined.) <snum> specifies the location in the resource the <pattern> matching should start at. Positive offsets add to the beginning; negative offsets subtract from the end.
  239.  
  240. 3.6.4  WData  <pattern> and LData <pattern>
  241.  
  242. WData and LData work just like the Data keyword except that WData starts on 16-bit ‚Äòword‚Äô boundaries, and LData starts on 32-bit ‚Äòlong-word‚Äô boundaries. Once the first byte of the pattern matches, the rest of the pattern is still compared byte by byte.
  243.  
  244.           NOTE: WHEN YOU USE WData OR LData AND SPECIFY A Pos THAT DOES NOT FALL ON THE APPROPRIATE BOUNDARY, SCANNING WILL ACTUALLY START AT THE PREVIOUS POSITION WHICH SATISFIES THE BOUNDARY CONDITION. FOR EXAMPLE, IF YOU WERE TO WRITE
  245.  
  246.      Pos 10 & LData 0210
  247.  
  248. THE PATTERN MATCHING WILL ACTUALLY START AT POSITION 8 BECAUSE POSITION 8 IS THE FIRST LONG-WORD BOUNDARY BEFORE POSITION 10.
  249.  
  250. Like Data, both WData and LData must be the last keyword in a search string. Also, note you can only specify ONE of these three keywords.
  251.  
  252. Where you have a search string that contains either Data, WData or LData, the offset location from the beginning of the resource fork where the search string matched displays in the Show Info dialog box as the ‚ÄúData Search Offset‚Äù number. The Data Search Offset number displays as both a decimal and hexadecimal number (hexadecimal in parentheses).
  253.  
  254.  
  255. 3.6.5  ID <op> <snum>
  256.  
  257. ID matches any <resource-selector> resource where the resource ID satisfies the given relationship. For example,
  258.  
  259.      Resource CODE & ID > 10
  260.  
  261. matches any CODE resource where the ID is greater than 10.
  262.  
  263. 3.6.6  Name <sep><string><sep>
  264.  
  265. Name matches any <resource-selector> resource where the name is enclosed in the separator characters. For example, 
  266.  
  267.      Resource INIT & Name "RR"
  268.  
  269. matches the INIT resource where the name is RR (" is the separator in this case).
  270.  
  271. 3.6.7  Size <op> <num>
  272.  
  273. Size matches any <resource-selector> resource where the resource size satisfies the given <op> relationship to <num>. For example,
  274.  
  275.      Resource MEV# & Size = 722
  276.  
  277. matches any MEV# resource where the size is equal to 722.
  278.  
  279.                                                                                      -----------------------
  280.  
  281. 3.7  PATTERN FORMATS‚Ķ
  282.       <pattern> :=
  283.              <segments>
  284.              #<hex-char><pattern>
  285.              <wild-pattern>
  286.              <white-pattern>
  287.              [<segments>]
  288.              [<white-pattern>]
  289.  
  290.       <segments> :=
  291.              <hex-segment>
  292.              <ascii-segment>
  293.              <hex-segment><ascii-segment>
  294.              <ascii-segment><hex-segment>
  295.  
  296.       <wild-pattern> :=
  297.              <segments>*<pattern>
  298.  
  299.      <white-pattern> :=
  300.              <segments>%<pattern>
  301.  
  302.      <hex-segment> :=
  303.              <hex-byte-word>{<hex-pattern>}
  304.  
  305.      <hex-byte-word> :=
  306.              <hex-char><hex-char>
  307.  
  308.      <hex-char> := character 0 through 9 or A through F
  309.  
  310.      <ascii-segment> :=
  311.               '<string>'
  312.              "<string>"
  313.  
  314.  
  315. 3.7.1  <pattern>
  316.  
  317. A <pattern> is defined as one of six things: 1) <segments>, 2) #<hex-char><pattern>, 3) <wild-pattern>, 4) <white-pattern>, 5) [<segments>], or 6) [<white-pattern>].
  318.  
  319. 3.7.2  <segments>
  320.  
  321. <segments> are either: 1) a <hex-segment> which is a sequence of hexadecimal digits, two per byte, or 2) an <ascii-segment> which is an ASCII string enclosed in either single or double quotes. Both segment types can directly follow each other.
  322.  
  323. When a <ascii-segment> is in single quotes, it means that the <ascii-segment> pattern must match EXACTLY in order for it to be considered ‚Äúa match.‚Äù 
  324.  
  325. If it is enclosed in double quotes, then all alphabetic characters match either upper and lower case alphabetic characters. In other words, it is case-insensitive. For example, 
  326.  
  327.      Data "HELLO"
  328.  
  329. matches the string ‚ÄúHello‚Äù in the file.
  330.  
  331. 3.7.3  #<hex-char><pattern>
  332.  
  333. #<hex-char><pattern> is used when you want to skip an exact number of characters in a pattern. It skips a specific number of bytes by using the ‚Äò#‚Äô character followed by a single hexadecimal character, 0 through F (represents 0 through 15 bytes), between each segment. For example, the pattern
  334.  
  335.      Data 3C#500
  336.  
  337. matches a file containing 3C12C9006A8000.
  338.  
  339. 3.7.4  <wild-pattern>
  340.  
  341. <wild-pattern> is used when you want to skip ANY number of characters in a pattern. It skips any number of bytes (‚Äòwild card‚Äô) by using the ‚Äò*‚Äô character between each segment. Any sequence of zero or more bytes matches the ‚Äò*‚Äô character.
  342.  
  343. 3.7.5  <white-pattern>
  344.  
  345. <white-pattern> is used when you want to skip ANY number of ‚Äòwhitespace‚Äô characters (space, tab, CR, LF, VT, and FF) by using the ‚Äò%‚Äô character between each segment. Any sequence of zero or more whitespace characters matches the ‚Äò%‚Äô character.
  346.  
  347. 3.7.6  [<segments>] and [<white-pattern>]
  348.  
  349. If a pattern segment (not containing a wild card) is surrounded by ‚Äò[]‚Äôs (an ‚Äúany of‚Äù pattern), then any character in the pattern can match a character. Furthermore, matching continues within the same ‚Äúany of‚Äù segment until a character NOT in the segment is encountered. Scanning then resumes with the first character after the closing ‚Äò]‚Äô. At least one character has to match the ‚Äúany of‚Äù segment. For example,
  350.  
  351.      Data "TO"[%00]'or'
  352.  
  353. matches ‚Äúto‚Äù (case insensitive), followed by any number of NULL‚Äôs (hex 00) and whitespace characters, followed by ‚Äòor‚Äô (case sensitive).
  354.  
  355.                                                                                      -----------------------
  356.  
  357. 3.8  DATA STRING FORMATS‚Ķ
  358.       <data-string> :=
  359.              dataFork
  360.              dataFork ¬´& <data-comp>¬ª
  361.  
  362.       <data-comp> :=
  363.              Pos <snum> & Data <pattern>
  364.              Pos <snum> & WData <pattern>
  365.              Pos <snum> & LData <pattern>
  366.              Size <op> <num>
  367.              Data <pattern>
  368.              WData <pattern>
  369.              LData <pattern>
  370.  
  371. A <data-string> is defined as one of two things: 1) the keyword dataFork (NOTE the lowercase d) by itself, or 2) the keyword dataFork followed by one or more <data-comp>‚Äôs each separated by a ‚Äò&‚Äô. 
  372.  
  373. The dataFork keyword matches if the current file has more than 0 bytes in its data fork.
  374.  
  375. The <data-comp> portion of dataFork ¬´& <data-comp>¬ª has the same meaning as its <resource-comp> equivalents (defined under the RESOURCE COMP FORMATS section) but refer to the data fork instead of the resource.
  376.  
  377. The Data, WData and LData must be the last keywords in a search string. Also, note you can only specify ONE of these three keywords.
  378.  
  379. Where you have a search string that contains either Data, WData or LData, the offset location from the beginning of the data fork where the search string matched displays in the Show Info dialog box as the ‚ÄúData Search Offset‚Äù number. The Data Search Offset number displays as both a decimal and hexadecimal number (hexadecimal in parentheses).
  380.  
  381.                                                                                       -----------------------
  382.  
  383.                                                                                            -the end -
  384.  
  385.  
  386.  
  387.